release: v0.2.0#9
Conversation
|
Caution Review failedThe pull request is closed. WalkthroughThis pull request performs a comprehensive migration from an OpenAPI-generated SDK to a custom, hand-built TypeScript SDK. The new architecture introduces a centralized Changes
Sequence Diagram(s)sequenceDiagram
participant App as Application
participant PC as PlaneClient
participant Config as Configuration
participant API as API Resource<br/>(e.g., Projects)
participant BR as BaseResource
participant HTTP as HTTP Client<br/>(axios)
App->>PC: new PlaneClient({apiKey, baseUrl})
PC->>Config: new Configuration(config)
Config->>Config: validate()
PC->>API: new Projects(config)
App->>API: create(workspace, projectData)
API->>BR: post('/projects', projectData)
BR->>BR: buildUrl(endpoint)
BR->>BR: getHeaders()
BR->>HTTP: axios.post(url, data, {headers})
HTTP-->>BR: response
BR->>BR: handleError(response)
BR-->>API: parsed response
API-->>App: Promise<Project>
sequenceDiagram
participant User as User
participant OAuth as OAuthClient
participant HTTP as HTTP Client<br/>(axios)
participant API as Plane API
User->>OAuth: new OAuthClient({clientId, clientSecret})
User->>OAuth: exchangeCodeForToken(code)
OAuth->>HTTP: axios.post(token_endpoint, {code, ...})
HTTP->>API: POST /oauth/token
API-->>HTTP: {access_token, refresh_token}
HTTP-->>OAuth: response.data
OAuth-->>User: PlaneOAuthTokenResponse
Estimated code review effort🎯 4 (Complex) | ⏱️ ~60 minutes Areas requiring extra attention:
Possibly related PRs
Suggested reviewers
Poem
✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro ⛔ Files ignored due to path filters (2)
📒 Files selected for processing (107)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
* feat!: add handcrafted SDK v0.2.0 - added models for each entities - added APIs for all available Plane entities - tests to verify e2e api sanity - examples for reference BREAKING CHANGE: must be carefully upgraded from 0.1.x versions as method signatures are changed * chore: adding prettier config * chore: remove ds store * fix: format all files * chore: package imports --------- Co-authored-by: Surya Prashanth <prashantsurya002@gmail.com>
* move existing tests under unit folder * don't fail unit tests when env is not setup * create helpers folder for test helpers * feat: add e2e test to verify project use case * add jest and tsconfig.jest files * feat: add unit tests using jest for all entities
* chore: eslint config setup * chore: updated the build test workflow * chore: setup pnpm workflow * chore: build errors * chore: updated the push step
* ops: update publishing flow for nw sdk * run only e2e tests in github actions
Summary by CodeRabbit
Release Notes
New Features
PlaneCliententry point for simplified API accessChores
Documentation